<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div id="app">
        <h2>当前计数{{counter}}</h2>
        <!-- <button v-on:click="counter++">+</button> -->
        <!-- <button v-on:click="counter--">-</button> -->

        <!-- 语法糖(一种更加有甜头的写法):简写 @click-->
        <button v-on:click="add">+</button>
        <button v-on:click="sub">-</button>
    </div>
    <script src="../js/vue.js"></script>
    <script>
      // 新的属性:methods,该属性用于在Vue对象中定义方法
      // 新的指令:@click,该指令用于监听某个元素的点击事件,并且需要指定当发生点击时,执行的方法(方法通常是methods中定义的方法)
        const app = new Vue({
            el:'#app',
            // el:document.querySelector('#app')
            data:{
                counter:0
            },
            methods:{
                add:function(){
                    console.log('add被执行');
                    this.counter++;
                },
                sub:function(){
                    console.log('sub被执行');
                    this.counter--;
                },
            },
            // Hook:钩子
            beforeCreate:function(){
                console.log('beforeCreate');
            },
            created:function(){
              // 一般做一些网络请求,请求一些数据,放到data里面
                console.log('created');
            },
            mounted:function(){
                console.log('mounted');
            },
            
        })

        // (命令式编程范式)
        // 1.拿button元素
        // 2.添加监听事件
    </script>
</body>
</html>